#ifndef _KC_CONNCLIENT_H__KC_
#define _KC_CONNCLIENT_H__KC_

#include <string>

namespace kc_sf
{
	/*
	 * Interfejs dla klientów, korzystających
	 * do połączenia z serwerem z protokołów typu tcp
	 */
	class CommClient
	{
		public:

			virtual ~CommClient () {}

			void virtual connectToSrv( const std::string &srv_name, int srv_port ) = 0;	// otwiera połączenie z serwerem
			bool virtual isConnected() const = 0;									// czy nawiązano połączenie z serwerem
			void virtual disconnect() = 0;											// zamyka połączenie z serwerem

			void virtual recvData( std::string &to, const std::string &until_str, int timeout ) = 0;	// czyta dane z gniazdka
			void virtual sendData( const std::string &what, int timeout ) = 0;				// przesyła dane do serwera
	};
}

#endif // _KC_CONNCLIENT_H__KC_
